/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.view;
import com.model.Buku;
import com.model.Majalah;
import com.model.Perpustakaan;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;

/**
 *
 * @author tashiba
 */
public class PanelTambahPublikasi extends JPanel {

    private JLabel labelKodeKoleksi;
    private JTextField textKodePublikasi;
    private JLabel labelJudul;
    private JTextField textJudul;
    private JLabel labelPenulis;
    private JTextField textPenulis;
    private JLabel labelPenerbit;
    private JTextField textPenerbit;
    private JLabel labelTahun;
    private JTextField textTahun;
    private JButton tombolSimpan;
    private JButton tombolBatal;
    private JRadioButton radioBuku;
    private JRadioButton radioMajalah;

    public PanelTambahPublikasi() {

        setLayout(null);

        JLabel judul = new JLabel("Form Tambah Publikasi");
        judul.setBounds(150, 20, 150, 20);
        this.add(judul);

        ButtonGroup jp = new ButtonGroup();
        radioBuku = new JRadioButton("Buku");
        radioBuku.setBounds(120, 70, 120, 20);
        radioMajalah = new JRadioButton("Majalah");
        radioMajalah.setBounds(240, 70, 120, 20);
        jp.add(radioBuku);
        jp.add(radioMajalah);
        radioBuku.setEnabled(true);
        radioMajalah.setEnabled(true);
        this.add(radioBuku);
        this.add(radioMajalah);

        labelKodeKoleksi = new JLabel("ID Koleksi");
        labelKodeKoleksi.setBounds(50, 120, 80, 20);
        this.add(labelKodeKoleksi);

        textKodePublikasi = new JTextField();
        textKodePublikasi.setBounds(130, 120, 100, 20);
        this.add(textKodePublikasi);

        labelJudul = new JLabel("Judul");
        labelJudul.setBounds(50, 150, 80, 20);
        this.add(labelJudul);

        textJudul = new JTextField();
        textJudul.setBounds(130, 150, 200, 20);
        this.add(textJudul);

        labelPenulis = new JLabel("Penulis");
        labelPenulis.setBounds(50, 180, 100, 20);
        this.add(labelPenulis);

        textPenulis = new JTextField();
        textPenulis.setBounds(130, 180, 200, 20);
        this.add(textPenulis);

        labelPenerbit = new JLabel("Penerbit");
        labelPenerbit.setBounds(50, 210, 100, 20);
        this.add(labelPenerbit);

        textPenerbit = new JTextField();
        textPenerbit.setBounds(130, 210, 200, 20);
        this.add(textPenerbit);

        labelTahun = new JLabel("Tahun");
        labelTahun.setBounds(50, 240, 100, 20);
        this.add(labelTahun);

        textTahun = new JTextField();
        textTahun.setBounds(130, 240, 200, 20);
        this.add(textTahun);

        JPanel save = new JPanel();
        tombolSimpan = new JButton();
        tombolSimpan.setBounds(120, 300, 80, 20);
        tombolSimpan.setText("Simpan");
        save.add(tombolSimpan);
        this.add(tombolSimpan);

        JPanel cancel = new JPanel();
        tombolBatal = new JButton();
        tombolBatal.setBounds(250, 300, 80, 20);
        tombolBatal.setText("Batal");
        cancel.add(tombolBatal);
        this.add(tombolBatal);

        tombolSimpan.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                tombolSimpanAction();
            }
        });

        tombolBatal.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });

    }

    public void tombolSimpanAction() {
        if (radioBuku.isSelected() == true) {
            Buku buku = new Buku();
            buku.setJudul(textJudul.getText());
            try {
                buku.setIdKoleksi(textKodePublikasi.getText());
            } catch (Exception ex) {
                Logger.getLogger(PanelTambahPublikasi.class.getName()).log(Level.SEVERE, null, ex);
            }
            buku.setPenerbit(textPenerbit.getText());
            buku.setPenulis(textPenulis.getText());
            buku.setTahun(Integer.parseInt(textTahun.getText()));

            Perpustakaan.tambahPublikasi(buku);
            Perpustakaan.tambahTabelPublikasi(buku);
            JOptionPane.showMessageDialog(this, "BUKU"
                    +"\nJudul      : "+buku.getJudul()
                    +"\nID Koleksi : "+buku.getIdKoleksi()
                    +"\nPenerbit   : "+buku.getPenerbit()
                    +"\nPenulis    : "+buku.getPenulis()
                    +"\nTahun      : "+buku.getTahun());

        } else {
            Majalah majalah = new Majalah();
            majalah.setJudul(textJudul.getText());
            try {
                majalah.setIdKoleksi(textKodePublikasi.getText());
            } catch (Exception ex) {
                Logger.getLogger(PanelTambahPublikasi.class.getName()).log(Level.SEVERE, null, ex);
            }
            majalah.setPenerbit(textPenerbit.getText());
            majalah.setPenulis(textPenulis.getText());
            majalah.setTahun(Integer.parseInt(textTahun.getText()));

            Perpustakaan.tambahPublikasi(majalah);
            Perpustakaan.tambahTabelPublikasi(majalah);
            JOptionPane.showMessageDialog(this, "MAJALAH"
                    +"\nJudul      : "+majalah.getJudul()
                    +"\nID Koleksi : "+majalah.getIdKoleksi()
                    +"\nPenerbit   : "+majalah.getPenerbit()
                    +"\nPenulis    : "+majalah.getPenulis()
                    +"\nTahun      : "+majalah.getTahun());
        }

    }
}